package br.com.biblioteca.bean;

import java.util.List;

import javax.ejb.Remote;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import br.com.biblioteca.interfaces.GerenciadorDeAutor;
import br.com.biblioteca.model.Autor;
import br.com.biblioteca.model.Editora;
import br.com.biblioteca.model.Usuario;

@Stateless
@Remote(GerenciadorDeAutor.class)
public class GerenciadorDeAutorBEAN implements GerenciadorDeAutor{

	@PersistenceContext
	private EntityManager em;
	
	public void adicionarAutor(Autor a) {
		em.persist(a);
	}

	@SuppressWarnings("unchecked")
	public List<Autor> getAutores() {
		Query query = em.createQuery("select e from Autor e");
		return query.getResultList();
	}

	
	public Autor getAutor(int id) {
		Autor gerenciado = em.find(Autor.class, id);
		return gerenciado;
	}

	
	public void alterarAutor(Autor a) {
		em.merge(a);
	}

	
	public void deletarAutor(Autor a) {
		System.out.println("EJB");
		Autor gerenciador = em.find(Autor.class, a.getId());
		em.remove(gerenciador);		
	}

}
